Bar codes are graphical representations of data, the most common of which are referred to as one dimensional (1D) and two dimensional (2D) bar codes. 1D bar codes are images that represent data by varying the widths and spacings of parallel lines. 2D bar codes are also images that represent data, but in addition to the parallel lines, or bars, a 2D bar code may contain rectangles, dots, hexagons and other geometric patterns in two dimensions. The data encoded in bar codes are interpreted by optical scanners and/or software.
Bar codes originally were scanned by special optical scanners called bar code readers; later, scanners and interpretive software became available on devices, including desktop printers and smart phones. Today, devices considered bar code readers include, but are not limited to: pen-type readers, laser scanners, CCD readers, camera-based readers, omni-directional bar code scanners, and cell phone cameras. Some of the leading manufacturers of smart phones offer bar code scanning software that can be installed on their respective smart phones. The goal of this software is to allow smart phone consumers to use their mobile devices to scan bar codes that they encounter, including but not limited to those on products in stores or on advertisements for products and/or services located in media such as magazines and posted in public places, such as bus stops.
After scanning a bar code using software installed on a smart phone, users can access the Internet to obtain information about the product, including but not limited to pricing and safety information. For example, information retrieved by a consumer can assist the consumer in finding the most competitive price for a product whose bar code the consumer scanned.